The present disclosure relates generally to data processing technology, and more specifically, to an eigenvalue-based data query.
When a database management system processes a query request from a user, there are multiple execution paths for executing the query, but the cost for some execution paths (such as query time) is high while the cost for some execution paths is low. Thus, the execution path of a query generally needs to be optimized in advance, for example, the query optimizer used in the current dominant database management system in the art mainly uses two optimization methods of “rule-based” and “cost-based” to optimize a SQL statement and generate a relatively better query plan. However, in some cases, the automatic optimization process by an optimizer may generate an execution plan having unacceptable performances. For example, the database management system may have been adjusted for the previous typical application (common Structured Query Language SQL statement). But, for a new SQL statement, the original adjusting parameter may not be applicable, and thus the optimizer may generate an execution path having poor efficiency. In a real application system, the SQL statement is generally very long and very complex. The algorithm of the optimizer cannot generate an optimal execution plan due to its limitation, and it's a time-consuming job for the system to optimize and compile these SQL statements.
In an adjusted database system, for new SQL statements, the previously optimized query plans should be utilized as much as possible so as to reduce the time for compiling and optimizing the SQL statements. Currently, in the dominant commercial database management system, in the widely used query plan reuse method the query plan is taken as a whole for reuse, while the execution plan cannot be divided into finer grains, which causes low reuse efficiency; and generally, the query plan is reused by matching and reusing through a simple method of matching texts of SQL statements, and the matching efficiency is low.